package server.interfaces;

/**
 * <h1>Interface ExceptionHolder</h1>
 * 
 * Interface to be implemented by the classes which store exceptions happened in
 * the server.
 * Follows the Observer pattern.
 * 
 * @author Tomas
 * @date March 8 2009
 *
 */
public interface ExceptionHolder {

	/**
	 * Registers an observer to be notified when an exception occur.
	 * 
	 * @param observer
	 * 		Observer to be notified.
	 */
	public void subscribe(ExceptionObserver observer);
	
	/**
	 * Unregisters an observer of the exceptions.
	 * 
	 * @param observer
	 * 		Observer to be removed.
	 */
	public void unsubscribe(ExceptionObserver observer);
	
}
